#ifndef _QUADTREE_H
#define _QUADTREE_H

#include <vector>
#include "node.h"

class Quadtree
{
public:
        Quadtree() {}
        Quadtree(Node *root) { allNode.push_back(root); }
        ~Quadtree();

        const std::vector<Node*>& GetAllNode() { return allNode; }
        void AddNode(Node *ancestor);

        void Display(IplImage *img);
        void Display();
        void Display(Node *node);

private:
        std::vector<Node*> allNode;

        static int nbDeleteQuadtree;
};

#endif // _QUADTREE_H
